package com.zmn.oms.zmn.business.interfaces.work;

import com.zmn.common.utils.office.excel.ExportExcelBuilder;
import com.zmn.oms.common.exception.OmsBaseException;
import com.zmn.oms.model.entity.work.OrderWorkQuery;
import org.springframework.scheduling.annotation.Async;

/**
 * 类描述：工单导出
 *
 * @author lujia
 * @date 2018/12/03 17:03
 */
public interface ZsOrderWorkQueryExportBService {

    /**
     * 导出工单列表
     *
     * @param query 工单查询条件
     * @return 下载 url
     */
    ExportExcelBuilder exportListOrderWorkByQuery(OrderWorkQuery query, Boolean supportServiceItem);

    /**
     * 异步导出工单列表
     * @param query
     */
    void asyncExportListOrderWorkByQuery(OrderWorkQuery query);

    /**
     * 创建导出任务
     * @param query
     * @param supportServiceItem
     */
    void buildExportTask(OrderWorkQuery query, Boolean supportServiceItem) throws OmsBaseException;
}
